#ifndef ____FML_LSM6DSL_H_
#define ____FML_LSM6DSL_H_

#include "lsm6dsl_reg.h"
#include "hdl_iic.h"
#include "hdl_clk.h"

typedef enum
{
	LSM6DSL_IDLE,
	LSM6DSL_INIT,
	LSM6DSL_START,
	LSM6DSL_READ
}en_lsm6dsl_step_t;

typedef struct
{
	en_lsm6dsl_step_t step;
	
	float acc_x;
	float acc_y;
	float acc_z;
	
	float gyro_x;
	float gyro_y;
	float gyro_z;
}stc_lsm6dsl_t;

typedef void (*lsm6dsl_callback_t)(stc_lsm6dsl_t pack_t);

void fml_lsm6dsl_init(void);

void fml_lsm6dsl_data_read(int16_t *acc_value, int16_t *gyro_value);

#endif
